Some software companies such as, for example, Microsoft Corporation, make software updates available for their products over the Internet. Typically, to obtain these updates, a client (e.g., a PC) periodically requests updates from a company server. The company server determines whether any updates are available and, if so, determines whether the updates are applicable to the client. For example, the company server may determine that a patch is available for a particular platform and version of a software product, and determine whether the client has a matching platform and software version. The company server allows the client to download updates that the server determines to be applicable to the client.
A problem arises when a client cannot access the company servers. The company servers may be inaccessible for any of a variety or reasons, such as bandwidth depletion resulting from widespread Internet flooding or denial of service attacks, or other reasons. If the company servers are inaccessible to a client, the client may not receive a critical update in a timely fashion.